package com.kyivmohyla.kma2.dao;

import com.kyivmohyla.kma2.model.Order;
import org.springframework.dao.DataAccessException;

import java.util.List;
import java.util.Map;

public interface OrderDao extends Dao<Order> {
    public List<Order> getOrdersByState(int[] states) throws DataAccessException;

    public List<Order> getOrdersByStateAndDate(int[] states, String date) throws DataAccessException;

    public List<Order> getOrdersByStateAndDateAndPosition(int[] states, String date, int position) throws DataAccessException;

    public Order getOrderWithMaxId() throws DataAccessException;

    public Map<Integer, Boolean> validateOrderSchedule(List<Order> orders) throws DataAccessException;

    public void updateList(List<Order> orders) throws DataAccessException;

}
